A computer game is a general term for an electronic game that involves human interaction with a user interface to generate feedback on any type of a display device, such as a raster display device, an LCD, or the like, associated with a television, a computer display, a handheld device, or others. Preferably, the computer game is played by a user for recreational purposes.
The electronic systems used to play video games are generally referred to as platforms or gaming platforms, and may include personal computers, video game consoles, handheld devices or the like.
Some games utilize an input device, also referred to as a game controller, with which a human player may manipulate the game. Known game controllers include standard input output (I/O) devices such as a keyboard or a pointing device (e.g., a mouse), dedicated gaming devices such as joystick, or motion-detection held devices held by the player such as WII™ controllers. Other gaming platforms, such as Microsoft Kinect™, use a motion sensor game controller which need not be held or otherwise carried by the player. Motion-sensor game controller may utilize a camera such as a webcam or other sensor for sensing the user's motions without requiring the user to hold or touch a physical controller, and pass the user's motions to the video game console. Some gaming platforms may also enable oral commands by the player, use of a phone interface and a touch screen, or the like.
Developing computer games is a labor intensive process. Generally, the developer has to provide a user interface (UI) module, for receiving the user's motions or activities and generate corresponding commands or instructions; a logic module for receiving and interpreting the user's commands and determining the course of the game; and a display module for displaying the game on the display device, including for example displaying characters, objects, scenes, menus or other selection options for a user, or the like.
A developer that has developed a computer game, may wish to maximize his or her revenues by offering a corresponding game adapted for other platforms. For example, a developer may wish to offer a game developed for a WII™ platform also to a Kinect™ or Sony PS3™ platforms.
Another need for porting may arise from a provider of platforms or devices, such as a mobile device, a new gaming platform, or the like, who wishes to supply the platform with a multiplicity of games. However, the provider may wish that at least some of the games be known and attractive to players, and in addition may wish to reduce time to market and obtain a significant number of games as soon as possible. For achieving this goal, porting games existing for other platforms may provide an efficient solution.
The ported game should provide a player with an experience which is as similar as possible to the original game experience.
However, porting and specifically porting the UI module may pose significant challenges, among which is that the new platform may not have the same or even corresponding input devices to those of the original platform. For example, a player playing a WII™ game may provide input to the game by waving his hands or performing other three dimensional (3D) motions. However, a Sony PS3™ only has a controller with some buttons or other controls which may be pressed or otherwise activated.